#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 2e5+100;
struct edge{
    int u,v,nxt;
}e[N];
int head[N],tot,u,n;
void add(int u,int v) {
    e[++tot].u=u; e[tot].v=v; e[tot].nxt=head[u]; head[u]=tot;
}
ll ans,s[N],a[N];
void dfs_s(int u) {

}
void dfs_a(int u) {

}
int main() {
    cin >> n;
    for(int i=2;i<=n;i++) {
        cin >> u;
        add(u,i);
    }
    for(int i=1;i<=n;i++) {
        cin >> s[i];
    }
    // 填充s[N]
    dfs_s(1);
    // 求所有a[N]
    dfs_a(1);
    cout << ans;
    return 0;
} 